<?xml version="1.0" encoding="utf-8"?>
<root>
 <Language name="SomeLang" casesensitive="yes">
    <Keywords>
    
      abstract 	event 	new 	struct as 	explicit 	null 	switch
      base 	extern 	object 	this bool 	false 	operator 	throw
      break 	finally 	out 	true byte 	fixed 	override 	try
      case 	float 	params 	typeof catch 	for 	private 	uint
      char 	foreach 	protected 	ulong checked 	goto 	public 	unchecked
      class 	if 	readonly 	unsafe const 	implicit 	ref 	ushort
      continue 	in 	return 	using enum 	namespace 	string
      decimal 	int 	sbyte 	virtual default 	interface 	sealed 	volatile
      delegate 	internal 	short 	void do 	is 	sizeof 	while
      double 	lock 	stackalloc  else 	long 	static
    </Keywords>
    <String startswith="&quot;" endswith="&quot;" escape="\&quot;,&quot;&quot;,\\"/>
    <String startswith="@&quot;" endswith="&quot;" escape = "&quot;&quot;"/>
    <String startswith="'" endswith="'" escape="'',\'"/>
    <CommentLine startswith="//"/>
    <Comment startswith="/*" endswith="*/" />

    <CustomWordGroup colorgroup="reserved1" casesensitive="yes">
      some space seperated words that can be coloured differently from those of keywords
    </CustomWordGroup>

    <CustomDelimited startswith="${" endswith="}" colorgroup="reserved1" />
    <CustomDelimited startswith="%" endswith="%" colorgroup="reserved2" />

  </Language>

  <Language name="C#" casesensitive="yes">
    <Keywords>
      abstract 	event 	new 	struct as 	explicit 	null 	switch
      base 	extern 	object 	this bool 	false 	operator 	throw
      break 	finally 	out 	true byte 	fixed 	override 	try
      case 	float 	params 	typeof catch 	for 	private 	uint
      char 	foreach 	protected 	ulong checked 	goto 	public 	unchecked
      class 	if 	readonly 	unsafe const 	implicit 	ref 	ushort
      continue 	in 	return 	using enum 	namespace 	string
      decimal 	int 	sbyte 	virtual default 	interface 	sealed 	volatile
      delegate 	internal 	short 	void do 	is 	sizeof 	while
      double 	lock 	stackalloc  else 	long 	static
    </Keywords>
    <String startswith="&quot;" endswith="&quot;" escape="\&quot;,&quot;&quot;,\\"/>
    <String startswith="@&quot;" endswith="&quot;" escape = "&quot;&quot;"/>
    <String startswith="'" endswith="'" escape="'',\'"/>
    <CommentLine startswith="//"/>
    <Comment startswith="/*" endswith="*/" />
  </Language>

  <Language name="MC++" casesensitive="yes">
    <Keywords>
      __abstract abstract __alignof array __asm __assume __based bool
      __box break case catch __cdecl char
      const const_cast continue __declspec default __delegate delegate delete deprecated dllexport dllimport
      do double dynamic_cast else enum  event __event explicit extern false __fastcall
      finally float for each in __forceinline friend friend_as __gc  gcnew generic
      goto __hook  __identifier if __if_exists __if_not_exists initonly
      __inline inline int __int8 __int16 __int32 __int64 __interface
      interface  interior_ptr __leave literal long
      __m64 __m128 __m128d __m128i __multiple_inheritance mutable
      naked namespace new __nogc  noinline  __noop noreturn nothrow  novtable
      nullptr operator __pin private __property property protected public
      __raise ref  class register reinterpret_cast return safecast __sealed
      sealed selectany  short signed __single_inheritance sizeof
      static static_cast __stdcall struct __super switch template this thread
      throw true try __try __except __finally __try_cast typedef typeid
      typename __unaligned __unhook union unsigned using declaration directive
      uuid __uuidof value __value virtual __virtual_inheritance void
      volatile __w64 __wchar_t wchar_t while
    </Keywords>
    <String startswith="&quot;" endswith="&quot;" escape="\&quot;,&quot;&quot;,\\"/>
    <String startswith="'" endswith="'" escape="'',\'"/>
    <CommentLine startswith="//"/>
    <Comment startswith="/*" endswith="*/" />
  </Language>

  <Language name="C++" casesensitive="yes">
    <Keywords>
      asm auto bool break case catch char class const const_cast continue default
      delete do double dynamic_cast else enum explicit export extern false float
      for friend goto if inline int long mutable namespace new operator private protected public register
      reinterpret_cast return short signed sizeof static static_cast struct switch template this
      throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while
    </Keywords>
    <String startswith="&quot;" endswith="&quot;" escape="\&quot;,&quot;&quot;,\\"/>
    <String startswith="'" endswith="'" escape="'',\'"/>
    <CommentLine startswith="//"/>
    <Comment startswith="/*" endswith="*/" />
  </Language>

</root>